library(mongolite)
library(plotrix)

Sys.setlocale(locale = "chinese")

thedate <- "20171024"
gen_png <- TRUE

host <- "localhost"

#AvgPrice 平均票价
#AvpPeoPle 场均人次
#BoxOffice 单日票房（万）
#BoxOffice_Up 环比变化 （%）
#IRank 排名
#MovieDay 上映天数
#MovieName 影片名
#SumBoxOffice 累计票房（万）
#WomIndex 口碑指数

m <- mongo("boxoffice_realtime", "stock", paste("mongodb://", host, sep=""))

boxoffice <- m$find()
boxoffice <- boxoffice[order(-as.numeric(boxoffice$sumBoxOffice)),]

if (gen_png) {
png(filename = "boxoffice_realtime.png", width=1280, height = 960)
pie(as.numeric(boxoffice$sumBoxOffice), 
      main = "BoxOffice",
      col = rainbow(length(boxoffice$sumBoxOffice)),
      radius = 1,
      labels = paste(boxoffice$MovieName, "/", boxoffice$sumBoxOffice, sep = ""))
legend("left", boxoffice$MovieName, cex=0.9, fill=rainbow(length(boxoffice$sumBoxOffice)))
}

if (gen_png) {
   dev.off()
   png(filename = "boxoffice_realtime_hist.png", width=1280, height=960)
}
ggplot(boxoffice, aes(x=MovieName, y=as.numeric(sumBoxOffice)), group = factor(1)) + 
  geom_bar(stat = "identity", width = 0.99, fill = rainbow(length(boxoffice$sumBoxOffice))) + theme_economist() + 
  geom_text(aes(label=sumBoxOffice, vjust=-0.8, hjust=0.5, color=MovieName), 
            show.legend = FALSE) +
  labs(title=thedate, x="MovieName", y="sumBoxOffice")
if (gen_png) {
    dev.off()
}
